package com.kj.tms.pri.system.basicinfo.service;


import com.kj.tms.common.bean.dto.Pager;
import com.kj.tms.pri.system.basicinfo.dto.BaseMessageDto;
import com.kj.tms.pri.system.basicinfo.dto.ShareholderDto;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * Created by yangruidong on 2018/3/15.
 */
public interface BaseMessageService {
    /**
    * @Method      save
    * @Param       保存企业基础信息dto
    * @Return
    * @Exception
    * @Description [方法描述]
    * @Author      yangruidong
    * @Version     1.0
    * @Date        2018/3/28 14:15
    */
    void save(@RequestBody BaseMessageDto dto);
    /**
     * @Method      save
     * @Param       保存企业基础信息dto
     * @Return
     * @Exception
     * @Description [方法描述]
     * @Author      yangruidong
     * @Version     1.0
     * @Date        2018/3/28 14:15
     */
    void update(@RequestBody BaseMessageDto dto);
    /**
    * @Method      insetShareholder
    * @Param       股东信息dto
    * @Return
    * @Exception
    * @Description [方法描述]
    * @Author      yangruidong
    * @Version     1.0
    * @Date        2018/3/28 14:18
    */
    void insetShareholder(@RequestBody ShareholderDto dto);
    /**
     * @Method      ListShareholder
     * @Param
     * @Return
     * @Exception
     * @Description [获取list 股东信息]
     * @Author      yangruidong
     * @Version     1.0
     * @Date        2018/3/28 14:18
     */
    List<ShareholderDto> ListShareholder(@RequestBody ShareholderDto dto);
    /**
     * @Method      getBaseMessage
     * @Param
     * @Return
     * @Exception
     * @Description [获取单个dto 股东信息]
     * @Author      yangruidong
     * @Version     1.0
     * @Date        2018/3/28 14:18
     */
    BaseMessageDto getBaseMessage(@RequestBody BaseMessageDto dto);
    /**
     * @Method      listByPager
     * @Param        dto 股东信息dto
     * @Return
     * @Exception
     * @Description [分页查询]
     * @Author      yangruidong
     * @Version     1.0
     * @Date        2018/3/28 14:18
     */
    Pager listByPager(@RequestBody ShareholderDto dto);
    /**
     * @Method      query
     * @Param        matterId 事项id taxpayersInfoId 纳税主体id
     * @Return
     * @Exception
     * @Description [查询企业基础信息展示信息]
     * @Author      yangruidong
     * @Version     1.0
     * @Date        2018/3/28 14:18
     */
    BaseMessageDto query(@RequestParam("matterId") String matterId, @RequestParam("taxpayersInfoId") String taxpayersInfoId);
    /**
    * @Method    listByCondition
    * @Param       
    * @Return      
    * @Exception   
    * @Description [根据条件查询查询]
    * @Author      yangruidong
    * @Version     1.0
    * @Date        2018/5/24 16:50
    */
    List<ShareholderDto>  listByCondition(@RequestBody ShareholderDto dto);
    /**
    * @Method      updateShareholder
    * @Param
    * @Return
    * @Exception
    * @Description [更新股东信息]
    * @Author      yangruidong
    * @Version     1.0
    * @Date        2018/5/24 17:05
    */
    void updateShareholder(@RequestBody ShareholderDto dto);
}
